2 Returns the closest distance between point pnt and the segment
3 that goes from point a to b
5 http://local.wasp.uwa.edu.au/~pbourke/geometry/pointline/
7 double distance_point_to_segment(const point
&a
,const point
&b
,
10 ((pnt
.x
- a
.x
)*(b
.x
- a
.x
) + (pnt
.y
- a
.y
)*(b
.y
- a
.y
))
13 intersection
.x
= a
.x
+ u
*(b
.x
- a
.x
);
14 intersection
.y
= a
.y
+ u
*(b
.y
- a
.y
);
15 if (u
< 0.0 || u
> 1.0){
16 return min(dist(a
, pnt
), dist(b
, pnt
));
18 return dist(pnt
, intersection
);